package com.ph.irp.base.materialassistantattribute.dao;

import java.sql.SQLException;
import java.util.List;

import com.ph.irp.model.PBaseMaterialAssistantattribute;

/**
 * The Interface AssistantAttributeDao.
 * 
 * @author SongYandong song.yandong@phinfoservices.com
 * @version 1.0 <br>
 * Copyright (C), 2009, SongYandong <br>
 * This program is protected by copyright laws. <br>
 * Program Name: AssistantAttributeDao.java<br>
 * Date:2009-11-16
 */
public interface AssistantAttributeDao {
	
	/**
	 * Adds the assistant attribute.
	 * 
	 * @param model the model
	 * 
	 * @throws SQLException the SQL exception
	 */
	public void addAssistantAttribute(PBaseMaterialAssistantattribute model) throws Throwable;
	
	/**
	 * Update assistant attribute.
	 * 
	 * @param model the model
	 * 
	 * @throws SQLException the SQL exception
	 */
	public void updateAssistantAttribute(PBaseMaterialAssistantattribute model)throws Throwable;
	
	/**
	 * Gets the all assistant attribute.
	 * 
	 * @param model the model
	 * 
	 * @return the all assistant attribute
	 * 
	 * @throws SQLException the SQL exception
	 */
	public List<PBaseMaterialAssistantattribute> getAllAssistantAttribute() throws Throwable;
	
	public List<PBaseMaterialAssistantattribute> getAssistantAttributeByCondition(PBaseMaterialAssistantattribute model) throws Throwable;
	
	/**
	 * Gets the all assistant attribute.
	 * 
	 * @param id the id
	 * 
	 * @return the all assistant attribute
	 * 
	 * @throws SQLException the SQL exception
	 */
	public PBaseMaterialAssistantattribute getAssistantAttributeById(int id) throws Throwable;
	
	
	public List<PBaseMaterialAssistantattribute> getAssistantattributeByTypeId(int assistantAttributeTypeId)throws Throwable;
	
	/**
	 * Delete assistant attribute.
	 * 
	 * @param id the id
	 * 
	 * @throws SQLException the SQL exception
	 */
	public void deleteAssistantAttribute(int id) throws Throwable;

}
